home *** CD-ROM | disk | FTP | other *** search
/ Software of the Month Club 2000 October / Software of the Month - Ultimate Collection Shareware 277.iso / pc / PROGRAMS / UTILITY / WINLINUX / DATA1.CAB / programs_-_include / NET / IRDA / IRVTD.H < prev    next >
C/C++ Source or Header  |  1999-09-17  |  2KB  |  93 lines

  1. /*********************************************************************
  2.  *                
  3.  * Filename:      irvtd.h
  4.  * Version:       0.1
  5.  * Sources:       irlpt.h
  6.  * 
  7.  *     Copyright (c) 1998, Takahide Higuchi <thiguchi@pluto.dti.ne.jp>,
  8.  *     All Rights Reserved.
  9.  *     
  10.  *     This program is free software; you can redistribute it and/or 
  11.  *     modify it under the terms of the GNU General Public License as 
  12.  *     published by the Free Software Foundation; either version 2 of 
  13.  *     the License, or (at your option) any later version.
  14.  *
  15.  *     I, Takahide Higuchi, provide no warranty for any of this software.
  16.  *     This material is provided "AS-IS" and at no charge.
  17.  *
  18.  ********************************************************************/
  19.  
  20. #ifndef IRVTD_H
  21. #define IRVTD_H
  22.  
  23. #include <linux/types.h>
  24. #include <linux/ioctl.h>
  25. #include <linux/tqueue.h>
  26. #include <linux/serial.h>
  27.  
  28. #include <net/irda/irmod.h>
  29. #include <net/irda/qos.h>
  30. #include <net/irda/ircomm_common.h>
  31.  
  32.  
  33. #define IRVTD_MAGIC 0xff545943  /* random */
  34. #define COMM_MAX_TTY 1
  35. #define IRVTD_RX_QUEUE_HIGH 10
  36. #define IRVTD_RX_QUEUE_LOW  2
  37.  
  38. #define IRCOMM_MAJOR  60;  /* Zero means automatic allocation
  39.                               60,61,62,and 63 is reserved for experiment */
  40. #define IRVTD_MINOR 64
  41.  
  42.  
  43.  
  44. struct irvtd_cb {
  45.  
  46.         int magic;          /* magic used to detect corruption of the struct */
  47.  
  48.     /* if daddr is NULL, remote device have not been discovered yet */
  49.  
  50.     int tx_disable;
  51.     int rx_disable;
  52.     struct sk_buff *txbuff;     
  53.     struct sk_buff_head rxbuff; 
  54.     struct ircomm_cb *comm;     /* ircomm instance */
  55.  
  56.     /* 
  57.      * These members are used for compatibility with usual serial device.
  58.      * See linux/serial.h
  59.      */
  60.  
  61.     int flags;
  62.     struct tty_struct *tty;
  63.  
  64.     int line;
  65.     int count;                /* open count */
  66.     int blocked_open;
  67.     struct wait_queue       *open_wait;
  68.     struct wait_queue       *close_wait;
  69.     struct wait_queue       *delta_msr_wait;
  70.     struct wait_queue       *tx_wait;
  71.  
  72.     struct timer_list       timer;
  73.  
  74.     long pgrp;
  75.     long session;  
  76.     unsigned short  closing_wait;     /* time to wait before closing */
  77.     unsigned short  close_delay;
  78.     
  79.     int custom_divisor;
  80.     int mcr;
  81.     int msr;
  82.     int cts_stoptx;
  83.     int ttp_stoptx;
  84.     int ttp_stoprx;
  85.     int disconnect_pend;
  86.     struct serial_icounter_struct icount;
  87.     int read_status_mask;
  88.     int ignore_status_mask;
  89. };
  90.  
  91.  
  92. #endif
  93.